package com.qdxwx.models.live;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * @author developer
 * @description vid_live_room
 */
public class LiveBaiJiaYun implements Serializable {

    private static final long serialVersionUID = 8256692804600702062L;

    /**
     * id
     */
    private Long id;
    /**
     * 用户id
     */
    private Long userId;
    /*用户邮箱*/
    private String email;
    /*昵称*/
    private String nickName;
    /**
     * 房间标题 可选 默认为 房间 + room_id
     */
    private String roomTitle;
    /*开课时间*/
    @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime startTime;
    /*下课时间*/
    @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime endTime;
    /*1:一对一课 2:班课*/
    private int type;
    /*签名*/
    private String sign;
    /*创建时间*/
    @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;
    /*最大在线人数*/
    private int maxUsers;
    /*百家云房间id*/
    private String roomId;
    @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime queryStartTime;
    @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime queryEndTime;

    public LiveBaiJiaYun() {
    }

    public Long getId() {
        return this.id;
    }

    public Long getUserId() {
        return this.userId;
    }

    public String getEmail() {
        return this.email;
    }

    public String getNickName() {
        return this.nickName;
    }

    public String getRoomTitle() {
        return this.roomTitle;
    }

    public LocalDateTime getStartTime() {
        return this.startTime;
    }

    public LocalDateTime getEndTime() {
        return this.endTime;
    }

    public int getType() {
        return this.type;
    }

    public String getSign() {
        return this.sign;
    }

    public LocalDateTime getCreateTime() {
        return this.createTime;
    }

    public int getMaxUsers() {
        return this.maxUsers;
    }

    public String getRoomId() {
        return this.roomId;
    }

    public LocalDateTime getQueryStartTime() {
        return this.queryStartTime;
    }

    public LocalDateTime getQueryEndTime() {
        return this.queryEndTime;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public void setNickName(String nickName) {
        this.nickName = nickName;
    }

    public void setRoomTitle(String roomTitle) {
        this.roomTitle = roomTitle;
    }

    public void setStartTime(LocalDateTime startTime) {
        this.startTime = startTime;
    }

    public void setEndTime(LocalDateTime endTime) {
        this.endTime = endTime;
    }

    public void setType(int type) {
        this.type = type;
    }

    public void setSign(String sign) {
        this.sign = sign;
    }

    public void setCreateTime(LocalDateTime createTime) {
        this.createTime = createTime;
    }

    public void setMaxUsers(int maxUsers) {
        this.maxUsers = maxUsers;
    }

    public void setRoomId(String roomId) {
        this.roomId = roomId;
    }

    public void setQueryStartTime(LocalDateTime queryStartTime) {
        this.queryStartTime = queryStartTime;
    }

    public void setQueryEndTime(LocalDateTime queryEndTime) {
        this.queryEndTime = queryEndTime;
    }

    @Override
    public String toString() {
        return "LiveBaiJiaYun{" +
                "id=" + id +
                ", userId=" + userId +
                ", email='" + email + '\'' +
                ", nickName='" + nickName + '\'' +
                ", roomTitle='" + roomTitle + '\'' +
                ", startTime=" + startTime +
                ", endTime=" + endTime +
                ", type=" + type +
                ", sign='" + sign + '\'' +
                ", createTime=" + createTime +
                ", maxUsers=" + maxUsers +
                ", roomId='" + roomId + '\'' +
                ", queryStartTime=" + queryStartTime +
                ", queryEndTime=" + queryEndTime +
                '}';
    }
}

